1 Introduction

This paper contains estimates for the reproductive number \(R_{t,m}\) over time \(t\) in various countries \(m\). It also shows the same for provinces within South Africa.. This is done using the methodology as described in [1]. These have been implemented in R using EpiEstim package [2] which is what is used here.

This paper and it’s results should be updated roughly daily and is available online.

2 Updates

As this paper is updated over time this section will summarise significant changes. The code producing this paper is tracked using Git. The Git commit hash for this project at the time of generating this paper was 412007e4d5249c4b61dc1d897c0d3d3fdec2fffc.

2020-06-12

  • Initial version.

2020-06-13

  • Combine the version for South Africa and other countries.

2020-06-14

  • Add Google Mobility data for comparison and further modelling.

2020-06-15

  • Add more details about methodology.

2020-06-17

  • Tidy-up to remove the code.

3 Countries

All countries available in the data will be analysed but also the provinces of South Africa. This paper produces charts for the following countries only:

  • Brazil
  • Canada
  • Chile
  • India
  • Ireland
  • Italy
  • Peru
  • South Africa
  • Spain
  • United Kingdom

4 Data

4.1 South Africa

Data is downloaded from the Git repository associated with [3].

In the case data file row 21 and 32 contain no provincial details. We estimated it by spreading the national total to the provinces in proportion to the combined mixture of the prior day and the next day.

Further fixes are applied to both case and death data:

  1. Scale up the per province data for unknown values.
  2. This results in provincial data which are not whole numbers. These are rounded to the nearest whole number.
  3. A SA column is added as the sum of the new per province data.
  4. Data is formatted and disaggregated such that item represents the incremental cases or deaths rather than cumulative figures.
  5. Data is filled with data (albeit with 0 cases or deaths) for all dates in the range.
  6. Any incremental case or death counts that are negative are zeroeised.
  7. New cumulative figures are calculated.

4.2 Other countries

Data for other countries are downloaded from [4]. Minor formatting is applied to get the data ready for further processing.

For Spain death data reporting of deaths appear to have significantly changed and we therefore exclude the data from this analysis [5].

4.3 Google Mobility Data

Google released mobility data indexes that deviations from a baseline of movement during 3 January to 6 February 2020 [6]. This data is downloaded and prepared for linking to our estimates of \(R_{t,m}\). The data is made available as a comma-separated file which is updated regularly but not daily. Data is sometimes up to a week behind. For countries other than South Africa only the country level mobility data is kept. I.e. we ignore regional data within countries. For South Africa provincial data is also kept.

We also calculate an average mobility index per [7]. This index averages the mobility indexes but exclude the following indexes:

  • Residential index is excluded as it’s less likely to drive the epidemic (and is inversely correlated),
  • Mobility in parks is also unlikely to be a driving factor.

5 Basic Exploration

5.1 South Africa

Below we plot cumulative case count on a log scale by province:

Below we plot the cumulative deaths by province on a log scale:

Below we plot average mobility indexes by province:

5.2 Other Countries

Below we plot cumulative case count on a log scale by country:

Below we plot the cumulative deaths by country on a log scale:

Below we plot average mobility indexes by country:

6 Method & Assumptions

This analysis follows the follows the method proposed [1].

Essentially this models the following relationship:

\(E(I_{t,m})=R_{t,m}\sum_{s=1}^tI_{t-s,m}w_{s}\) where:

  • \(m\) is the country of province in case of South African data.
  • \(I_{t,m}\) is the number of cases (or deaths) reported at time \(t\).
  • \(R_{t,m}\) is the “instantaneous reproduction number” to quote [1].
  • \(I_{t,m} \sim Poisson\) with the above mean.
  • \(w_{s}\) is the infectivity profile of an individual over time \(s\).

The formulation of instantaneous rate of transmission proposed in [1] is convenient because it ensures that \(R_{t,m}\) only depends on information that is known at time \(t\). We do not need to know about future transmission.

6.1 Serial Interval

To do further analysis an serial interval assumption is needed (\(w_{s}\)). The serial interval is taken from [8]. It’s assumed to be Gamma distributed with mean of 6.48 and standard deviation of 3.83. This corresponds to the effective infectiousness of an individual since acquiring the infection themselves.

We plot this serial distribution below:

6.2 Time Window Size

[1] describes a choice of a time window to estimate \(R_{t,m}\). Based on this analysis we chose a time window of 7-days (\(\tau\) using notation of [1]). During this window \(R_{t,m}\) is assumed to be constant. However information prior that is taken into account.

Note that the time window size does not interact with the serial interval as information prior to the window is taken into account. It’s just the period during which \(R_{t,m}\) is assumed to be constant.

Based on the table in Appendix 2 of [1] we believe a window of 7-days to be reasonable as long as that window contains 12 or more cases or deaths.

7 Estimate \(R_{t,m}\)

7.1 Estimation Routine

The analysis works backwards and fits \(R_{t,m}\) values for whole weeks (ending on the last date in the data) using the EpiEstim package.

So \(t\) is based on the date of reporting (be that cases or deaths) and \(m\) is the country or province. Two values are estimated for each country:

  1. \(R_{t,m}^{cases}\) is the reproductive number implied by the cases reported at time \(t\) in country \(m\).
  2. \(R_{t,m}^{deaths}\) is the reproductive number implied by the deaths reported at time \(t\) in country \(m\).

Note that the time periods are left unadjusted, though in reality the \(R_{t,m}^{deaths}\) should be shifted back approximately 2 weeks relative to \(R_{t,m}^{cases}\).

8 Linking \(R_{t,m}\) estimates to mobility

Linking the mobility data should be done in a way that corresponds to the time the infection should have occurred not the time of death. For cases we assume 6 days from infection to case being diagnosed plus a further 7-day reporting delay. For death we assume 23 days from infection to death and a further 7-day reporting delay as well.

Mobility data is then averaged over the weeks corresponding to the \(R_{t,m}\) shifted as above.

9 Modelling \(R_{t,m}\) as a function of Mobility Indexes

TO DO

10 Results

10.1 Current \(R_{t,m}\) estimates

Below current (last weekly) \(R_{t,m}\) estimates are tabulated.

10.1.1 South Africa

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
EC cases 12,789 2020-07-21 1.0 1.0 1.0
EC deaths 219 2020-07-21 1.2 1.3 1.5
FS cases 5,378 2020-07-21 1.5 1.6 1.6
FS deaths 22 2020-07-21 0.7 1.1 1.6
GP cases 32,344 2020-07-21 0.9 0.9 0.9
GP deaths 316 2020-07-21 1.1 1.2 1.3
KZN cases 17,093 2020-07-21 1.3 1.3 1.3
KZN deaths 146 2020-07-21 1.2 1.4 1.6
LP cases 1,897 2020-07-21 1.2 1.2 1.3
LP deaths 0 2020-07-21 0.0 0.1 0.5
MP cases 3,087 2020-07-21 1.2 1.3 1.3
MP deaths 19 2020-07-21 0.6 1.0 1.4
NC cases 959 2020-07-21 1.2 1.2 1.3
NW cases 3,848 2020-07-21 0.9 0.9 1.0
NW deaths 12 2020-07-21 0.6 1.2 1.9
SA cases 83,506 2020-07-21 1.0 1.0 1.0
SA deaths 1,022 2020-07-21 1.1 1.2 1.2
WC cases 6,269 2020-07-21 0.7 0.7 0.8
WC deaths 288 2020-07-21 0.9 1.0 1.2

10.1.2 Other Countries

The table below contains \(R_{t,m}\) estimates for the last week available. These estimates are based either on cases or deaths and a 95% confidence interval is shown.

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
Brazil cases 233,679 2020-07-21 0.9 0.9 0.9
Brazil deaths 7,287 2020-07-21 0.9 1.0 1.0
Canada cases 2,969 2020-07-21 1.3 1.4 1.4
Canada deaths 68 2020-07-21 0.6 0.7 0.9
Chile cases 15,372 2020-07-21 0.8 0.8 0.8
Chile deaths 1,609 2020-07-21 1.6 1.7 1.8
India cases 248,439 2020-07-21 1.3 1.3 1.3
India deaths 4,357 2020-07-21 1.1 1.2 1.2
Ireland cases 128 2020-07-21 0.9 1.0 1.2
Ireland deaths 7 2020-07-21 0.5 1.2 2.1
Italy cases 1,394 2020-07-21 0.9 1.0 1.0
Italy deaths 91 2020-07-21 0.8 0.9 1.1
Peru cases 27,558 2020-07-21 1.1 1.1 1.1
Peru deaths 1,330 2020-07-21 1.0 1.0 1.1
South_Africa cases 85,832 2020-07-21 1.1 1.1 1.1
South_Africa deaths 1,001 2020-07-21 1.0 1.1 1.1
Spain cases 8,883 2020-07-20 2.1 2.1 2.2
Sweden cases 2,222 2020-07-21 0.8 0.9 0.9
Sweden deaths 103 2020-07-21 0.8 1.0 1.2
United_Kingdom cases 5,239 2020-07-21 1.1 1.1 1.1
United_Kingdom deaths 482 2020-07-21 0.7 0.7 0.8

10.1.3 Top 10 Countries

Below we show various extremes of \(R_{t,m}\) where counts (deaths or cases) exceed 50 in the last week.

10.1.3.1 Lowest \(R_{t,m}\) based on Deaths

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
Nigeria deaths 57 2020-07-21 0.5 0.7 0.9
Pakistan deaths 319 2020-07-21 0.6 0.7 0.8
Canada deaths 68 2020-07-21 0.6 0.7 0.9
Ukraine deaths 86 2020-07-21 0.6 0.7 0.9
United_Kingdom deaths 482 2020-07-21 0.7 0.7 0.8
Russia deaths 988 2020-07-21 0.8 0.8 0.9
Poland deaths 51 2020-07-21 0.7 0.9 1.1
Ecuador deaths 255 2020-07-21 0.8 0.9 1.0
Guatemala deaths 258 2020-07-21 0.8 0.9 1.0
Saudi_Arabia deaths 280 2020-07-21 0.8 0.9 1.0

10.1.3.2 Lowest \(R_{t,m}\) based on Cases

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
Sri_Lanka cases 84 2020-07-21 0.2 0.3 0.3
Slovakia cases 78 2020-07-21 0.5 0.6 0.7
Mali cases 63 2020-07-21 0.5 0.6 0.8
Kosovo cases 759 2020-07-21 0.6 0.7 0.7
United_Arab_Emirates cases 1,995 2020-07-21 0.6 0.7 0.7
Pakistan cases 12,492 2020-07-21 0.7 0.7 0.7
Liberia cases 83 2020-07-21 0.6 0.7 0.8
Democratic_Republic_of_the_Congo cases 368 2020-07-21 0.6 0.7 0.8
Cameroon cases 984 2020-07-21 0.7 0.7 0.7
Haiti cases 336 2020-07-21 0.6 0.7 0.8

10.1.3.3 Highest \(R_{t,m}\) based on Deaths

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
Kyrgyzstan deaths 930 2020-07-21 3.8 4.0 4.3
Zambia deaths 78 2020-07-21 1.7 2.2 2.7
Kazakhstan deaths 210 2020-07-21 1.6 1.9 2.1
Chile deaths 1,609 2020-07-21 1.6 1.7 1.8
Argentina deaths 470 2020-07-21 1.3 1.4 1.5
El_Salvador deaths 74 2020-07-21 1.0 1.3 1.6
Indonesia deaths 583 2020-07-21 1.2 1.3 1.4
Oman deaths 67 2020-07-21 1.0 1.2 1.5
France deaths 148 2020-07-21 1.0 1.2 1.4
India deaths 4,357 2020-07-21 1.1 1.2 1.2

10.1.3.4 Highest \(R_{t,m}\) based on Cases

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
Bahamas cases 61 2020-07-21 3.5 4.6 5.8
Zambia cases 1,431 2020-07-21 2.7 2.9 3.0
Kyrgyzstan cases 16,713 2020-07-21 2.6 2.6 2.7
Spain cases 8,883 2020-07-20 2.1 2.1 2.2
Zimbabwe cases 679 2020-07-21 1.8 2.0 2.1
Lithuania cases 73 2020-07-21 1.5 1.9 2.4
Uruguay cases 75 2020-07-21 1.5 1.8 2.3
China cases 525 2020-07-21 1.7 1.8 2.0
Hungary cases 100 2020-07-21 1.4 1.7 2.1
Ethiopia cases 2,441 2020-07-21 1.6 1.7 1.7

10.2 Result Plots

Below we plot results for each country/province in a list. We filter out weeks where the upper end of confidence interval for \(R_{t,m}\) exceeds five.

10.2.1 South Africa

Below we plot estimates for all the provinces. Note that [1] recommends only to start using estimates after at least 12 cases have occurred. On that basis we do not have estimates for R based on deaths for a number of provinces.

10.2.2 Other Countries

Below we plot all the countries:

10.2.3 Countries by Continent

10.2.3.1 Africa

10.2.3.2 America

10.2.3.3 Asia

10.2.3.4 Europe

10.2.3.5 Oceania

10.2.4 Scatter Plots of \(R_{t,m}^{cases}\) vs. \(R_{t,m}^{deaths}\)

Below we plot estimates of \(R_{t,m}\) based on cases versus those based on deaths for countries where these estimates range between 0.5 and 2.

10.2.4.1 South Africa

Below we plot where there were more than 5 deaths and cases in the last week. It appears that, generally, \(R_{t,m}^{cases}\) and \(R_{t,m}^{deaths}\) are consistent.

10.2.4.2 Other countries

Below we plot where there were more than 25 deaths and cases in the last week. It appears that, generally, \(R_{t,m}^{cases}\) and \(R_{t,m}^{deaths}\) are consistent.

10.3 Mobility

10.3.1 Simple plot

Below we plot weeks of estimates of \(R_{t,m}\) versus the average mobility index that was constructed. There is a clear link between mobility and the reproductive number. As it decreases \(R_{t,m}\) reduces:

10.3.2 Modelling Results

TO DO

11 Discussion

From the basic plots it’s clear that South Africa and a few other countries appear to be on a different “slope” than European countries show. These include Brazil, Peru, Chile and India.

The above shows estimates for reproductive number using cases and deaths (\(R_{t,m}^{cases}\) and \(R_{t,m}^{deaths}\)) for each country \(m\) over time \(t\) in weeks.

From the current estimates it appears that, at present, in general South African provincial estimates based on cases and deaths correspond. An exception to this may be Eastern Cape with estimates based on deaths exceeding those based on cases.

It is also clear that estimates based on cases appear to precede the movements based on deaths over time. This can be expected as, all things being equal, infections and associated cases should be a precursor to deaths.

On a scatter plot of countries most appear to have \(R_{t,m}^{cases}\) correlated well with \(R_{t,m}^{deaths}\). There are some outliers with \(R_{t,m}^{deaths}\) higher than \(R_{t,m}^{cases}\) indicating perhaps limited testing, or alternatively epidemics that are slowing (given the leading nature of cases vs. deaths).

Overall it’s clear that having multiple measures of \(R_{t,m}\) appears useful and monitoring it’s value is something useful.

We also show that mobility is clearly correlated with \(R_{t,m}^{cases}\) in the countries shown.

Limitation of this method to estimate \(R_{t,m}\) are noted in [1]

  • It’s sensitive to changes in transmissibility, changes in contact patterns, depletion of the susceptible population and control measures.
  • It relies on an assumed serial interval assumptions.
  • The size of the time window can affect the volatility of results.
  • Results are time lagged with regards to true infection, more so in the case of the use of deaths.
  • It’s sensitive to changes in case (or death) detection.
  • The serial interval may change over time.

Despite these limitation we believe the ease of calculation of this method and the ability to use multiple sources makes it useful as a monitoring tool.

12 Detailed Output

Detailed output for all countries are saved to a comma-separated value file. The file can be found here.

13 Author

This report was prepared by Louis Rossouw. Please get in contact with Louis Rossouw if you have comments or wish to receive this regularly.

Louis Rossouw
Head of Research & Analytics
Gen Re | Life/Health Canada, South Africa, Australia, NZ, UK & Ireland
Email: LRossouw@GenRe.com Mobile: +27 71 355 2550

The views in this document represents that of the author and may not represent those of Gen Re. Also note that given the significant uncertainty involved with the parameters, data and methodology care should be taken with these numbers and any use of these numbers.

References

[1] A. Cori, N. M. Ferguson, C. Fraser, and S. Cauchemez, “A new framework and software to estimate time-varying reproduction numbers during epidemics,” American Journal of Epidemiology, vol. 178, no. 9, pp. 1505–1512, Sep. 2013, doi: 10.1093/aje/kwt133. [Online]. Available: https://doi.org/10.1093/aje/kwt133

[2] A. Cori, EpiEstim: A package to estimate time varying reproduction numbers from epidemic curves. 2013 [Online]. Available: https://CRAN.R-project.org/package=EpiEstim

[3] V. Marivate et al., “Coronavirus disease (COVID-19) case data - South Africa.” Zenodo, 2020 [Online]. Available: https://zenodo.org/record/3888499

[4] European Centre for Disease Prevention and Control, “Data on the geographic distribution of COVID-19 cases worldwide.” European Union, 2020 [Online]. Available: https://www.ecdc.europa.eu/en/publications-data/download-todays-data-geographic-distribution-covid-19-cases-worldwide

[5] R. Minder, “Counting bodies and pointing fingers as Spain tallies coronavirus dead,” New York Times [Online]. Available: https://www.nytimes.com/2020/04/16/world/europe/coronoavirus-spain-death-toll.html

[6] Google LLC, “Google COVID-19 community mobility reports.” 2020 [Online]. Available: https://www.google.com/covid19/mobility/

[7] P. Nouvellet et al., “Report 26: Reduction in mobility and COVID-19 transmission,” Imperial College London, 2020 [Online]. Available: https://www.imperial.ac.uk/mrc-global-infectious-disease-analysis/covid-19/report-26-mobility-transmission/

[8] N. Ferguson et al., “Report 9: Impact of non-pharmaceutical interventions (NPIs) to reduce COVID19 mortality and healthcare demand,” Imperial College London, 2020 [Online]. Available: https://www.imperial.ac.uk/mrc-global-infectious-disease-analysis/covid-19/report-9-impact-of-npis-on-covid-19/